2. Overview



This chapter introduces you to the CodeWarrior development universe. With CodeWarrior, no programming project is out of your reach. The overview covers the following topics:


The CodeWarrior IDE

The CodeWarrior IDE (Integrated Development Environment) is the center of CodeWarrior software development. The IDE offers:

The IDE's core tools are the tightly and transparently integrated primary components used to write code. Table 2.1 describes some of the individual components included with the CodeWarrior IDE.

Table 2.1 The IDE's core tools

This tool
Provides these features and functions
project manager
Use the commands in the IDE's Project menu to gather all the files of a program together along with configurable sets of options into a project file. It also decides the plugin compilers and linkers to create the final program.
rapid application development
CodeWarrior now offers tools to automate new applications to handle the coding of generic intialization routines and the drawing of user interface elements.
source code editor
Use the commands in the Edit and Search menus, and the controls in the IDE's editor windows to edit source code and text. Some of the editor's features are:
browser
Use the commands in the Window menu, features in any source code view, and controls in the browser's window to get quick, intuitive access to the definitions of classes, variables, routines, enumerations, and other source code elements.
compilers and linkers
Thanks to its plugin architecture, the IDE is able to play host to a limitless variety of compilers and linkers to generate software for several operating system and processor platforms.
debugger

Use the commands in the Window, Debug, and Data menus to control your program, step through its source code or assembly statements, set breakpoints, set watchpoints, and examine its data while it executes. The IDE's debugger works with all kinds of code in all the supported languages-C, C++, Pascal, and Java. Use the debugger to debug libraries, executables, multiple threads, and processes. The debugger also supports debugging code running on multiple processors.

Some Metrowerks products do not include support for all available core tools. See the documentation to determine which core tools are included in your package.


Multiple Programming Hosts

Metrowerks CodeWarrior is currently hosted on these platforms:

This makes it easy to switch to another platform as your programming requirements change while retaining the familiar CodeWarrior development environment. Furthermore, projects from one host can be opened by any of the other hosts. This feature provides an enormous boost in productivity when developing on multiple platforms.


Multiple Languages

CodeWarrior Professional supports development with the most common languages used by professional programmers today: C, C++, Java, and Pascal. Table 2.2 shows the list of compilers Metrowerks provides to generate software for its target platforms.

Table 2.2 Language supported for targets

Target platform
C
C++
Java
Java Virtual Machine
·
Linux
·
·
Mac OS
(68K and PowerPC)
·
·
·
Palm OS
·
·
Solaris
·
·
·
Sony PlayStation or
Net Yaroze
·
·
Win32/Intel
·
·
·

Some Metrowerks products do not include support for all available languages. See the documentation to determine which language(s) are included in your package.


Multiple Programming Targets

Use CodeWarrior on your host system to write software for many operating system and processor platforms (targets). Table 2.3 shows you some of the major targets supported by each host.

Table 2.3 Programming targets and their host development platforms

Target platform
Windows
Mac OS
Solaris
Linux
Java Virtual Machine
·
·
·
Mac OS (68K & PPC)
·
·
Palm OS
·
·
Solaris
·
Sony PlayStation or
Net Yaroze
·
·
Win32/Intel
·
·
·

The CodeWarrior product you purchased does not include compilers and linkers for every possible target. Check "CodeWarrior Documentation" and the appropriate manual for a list of targets supported by the product.


Libraries and Application Frameworks


Standard libraries

CodeWarrior includes standard libraries with its compilers, when appropriate for a target platform. CodeWarrior Professional includes MSL (Metrowerks Standard Library) for C and C++ for Win32/Intel and Mac OS. MSL C and MSL C++ are ANSI-conformant standard libraries.


Target libraries

To access the services and features of a target platform's operating system, the CodeWarrior IDE/Integrated Debugger also includes libraries and interface files from the target platform's manufacturer. For example, CodeWarrior Professional comes with Microsoft's Win32 SDK header files to develop software for the Win32/Intel platform.


Application frameworks

Programming for modern, graphical operating systems like Windows 95/98/NT, Mac OS, and Java is non-trivial, and that's where an application framework helps. A framework supplies standardized code to handle many common programming tasks, making the creation and design of a new application much easier and faster.

The CodeWarrior comes with several complete application frameworks, one for each major CodeWarrior target.

Table 2.4 Frameworks supported

Framework
Target platform
AWT (Abstract Windowing Toolkit)
Java
Swing
Java
MFC (Microsoft Foundation Classes)
Windows
PowerPlant
Mac OS


CodeWarrior Documentation

CodeWarrior comes with a wealth of online documentation. This is found in the Documentation folder on the CodeWarrior CD-ROM. For more information on using the documentation to learn about CodeWarrior, see "CodeWarrior Documentation."


Finding information for a specific target platform

To learn the use of CodeWarrior to develop software for a particular target platform, refer to the appropriate Targeting manual that comes with CodeWarrior Professional. For example, to learn and develop an application or DLL for Win32/Intel using CodeWarrior, read Targeting Win32.

Every Targeting manual has the following:


Getting printed documentation

Some manuals titled Inside CodeWarrior are available as printed books. Contact your local distributor or browse the Metrowerks Web page (http://www.metrowerks.com/geekware/) for information.


Example Projects

CodeWarrior Professional comes with lots of sample source code and projects to give you an insight into how others use CodeWarrior to develop software. You'll find this sample software in the CodeWarrior Examples folder on your CodeWarrior CD.





Visit the Metrowerks website at: http://www.metrowerks.com
For assistance contact Metrowerks Technical Support at: support@metrowerks.com
Copyright © 1999, Metrowerks Corp. All rights reserved.

Last updated: May 25, 1999 * Chris Magnuson * John Roseborough